﻿// Version:1
// Author:Sanket Naik
// Date:July-21-2010 
// Comments:
// 
// 
// 

namespace ManagedServices.SubService.Common
{
    /// <summary>
    /// The class Responsible for Creating an Instance of Managed Service.
    /// </summary>
    public abstract class ManagedServiceFactory
    {
        /// <summary>
        /// Name of the Managed Service
        /// </summary>
        public string ServiceName { get; private set; }

        /// <summary>
        /// The Description of the Managed Service
        /// </summary>
        public string ServiceDescription { get; private set; }

        /// <summary>
        /// The abstract method, which is responsible for creating an appropriate Instance of Managed Service Instance 
        /// </summary>
        /// <returns>instance of IManagedService</returns>
        public abstract IManagedService CreateService();
    }
}